package easybooking.data;

import java.util.*;

/**
 * Exemplary Interface of a Flight.
 *
 * @author Hakan Keles
 *
 */
// <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
// #[regen=yes,id=DCE.5BF8E9FF-807A-7DF2-CE6F-EF03DD37C1F3]
// </editor-fold> 
public interface Flight extends java.rmi.Remote {

    /**
     * Association to the airport, where the flight starts.
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.4B200FE8-B48B-6BEA-CA9E-14A686F50225]
    // </editor-fold> 
    public static final Airport start = null;
    /**
     * Association to the airport, where the flight stops.
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.E3F0728C-BA64-B482-670D-3F0D8DC7CDE9]
    // </editor-fold> 
    public static final Airport destination = null;
    /**
     * Association to the plane, which executes the flight.
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.16AB30B4-B09D-7769-9C40-2DFEB53F8372]
    // </editor-fold> 
    public static final Plane executed_by = null;

    /**
     * Read-out the ID of the flight.
     * @return ID
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.F8903080-8DAC-1D75-BA38-F791A8C00A7F]
    // </editor-fold> 
    public int getFlightId() throws java.rmi.RemoteException;

    /**
     * Read-out the Date of the flight.
     * @return Date
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.44B3F0C2-6073-3BA2-9BDE-688F80FCC163]
    // </editor-fold> 
    public Date getDateTime() throws java.rmi.RemoteException;

    /**
     * Read-out the ID of the plane, which executes the flight.
     * @return ID
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.5C8D83D6-3CA9-0A8B-6A36-83022F92BEE9]
    // </editor-fold> 
    public int getPlaneId() throws java.rmi.RemoteException;

    /**
     * Read-out the ID of the airport, where the flight starts.
     * @return ID
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.9A1F0CFB-F6A3-A190-6CC0-409D0EFEB2EE]
    // </editor-fold> 
    public int getStartAirportId() throws java.rmi.RemoteException;

    /**
     * Read-out the ID of the airport, where the flight stops.
     * @return ID
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.B360599B-3F05-33EE-D966-4F97889252D4]
    // </editor-fold> 
    public int getDestAirportId() throws java.rmi.RemoteException;

    /**
     * Set the ID of the flight.
     * @param flightId The id of the flight.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.0D002ED1-ED8E-2244-76A3-15EE090C144D]
    // </editor-fold> 
    public void setFlightId(int flightId) throws java.rmi.RemoteException;

    /**
     * Set the Date of the flight.
     * @param dateTime The Date of the flight.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.2BB3876C-07C4-747B-E91F-2EA7633C0AB9]
    // </editor-fold> 
    public void setDateTime(Date dateTime) throws java.rmi.RemoteException;

    /**
     * Set the ID of the plane, which executes the flight.
     * @param planeId The ID of the plane.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.FF7E02D3-A51E-F95C-1D8E-7387357AFE9D]
    // </editor-fold> 
    public void setPlaneId(int planeId) throws java.rmi.RemoteException;

    /**
     * Set the ID of the airport, where the flight starts.
     * @param startAirportId The ID of the start airport.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.C5D87A16-1F33-82B9-278C-BC747AE511AB]
    // </editor-fold> 
    public void setStartAirportId(int startAirportId) throws java.rmi.RemoteException;

    /**
     * Set the ID of the airport, where the flight stops.
     * @param destAirportId The ID of the destination airport.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.B19869ED-6AF5-BCDE-93C9-743C269C9E57]
    // </editor-fold> 
    public void setDestAirportId(int destAirportId) throws java.rmi.RemoteException;

    /**
     * Read-out the status of the flight.
     * @return status
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.E28B189F-9788-8C42-0908-299576AACFEF]
    // </editor-fold> 
    public boolean getIsActive() throws java.rmi.RemoteException;

    /**
     * Set the status of the flight.
     * @param status The status of the flight.
     * @throws java.rmi.RemoteException
     */
    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.44486650-F8A8-3E61-797E-12938D0DDC86]
    // </editor-fold> 
    public void setIsActive(boolean status) throws java.rmi.RemoteException;
}

